﻿Imports System.Drawing

''' <summary>
''' RoutePlanData 用于封装一次路径规划过程中 的规划信息
''' </summary>
Public Class RoutePlanData

    Sub New(ByVal map As Rectangle, ByVal destination As Point)
        Me.mCellMap = map
        Me.mDestination = destination
        mClosedList = New List(Of IAStarNode)
        mOpenedList = New List(Of IAStarNode)
    End Sub

    ''' <summary>
    ''' CellMap 地图的矩形大小。经过单元格标准处理
    ''' </summary>
    ReadOnly Property CellMap As Rectangle
        Get
            Return mCellMap
        End Get
    End Property
    Private mCellMap As Rectangle

    ''' <summary>
    ''' ClosedList 关闭列表，即存 放已经遍历处理过的节点
    ''' </summary>
    ReadOnly Property ClosedList As IList(Of IAStarNode)
        Get
            Return mClosedList
        End Get
    End Property
    Private mClosedList As IList(Of IAStarNode)

    ''' <summary>
    ''' OpenedList 开放列表，即存 放已经开发但是还未处理的节点
    ''' </summary>
    ReadOnly Property OpenedList As IList(Of IAStarNode)
        Get
            Return mOpenedList
        End Get
    End Property
    Private mOpenedList As IList(Of IAStarNode)

    ''' <summary>
    ''' Destination 目的节点的位置
    ''' </summary>
    ReadOnly Property Destination As Point
        Get
            Return mDestination
        End Get
    End Property
    Private mDestination As Point

End Class
